home *** CD-ROM | disk | FTP | other *** search
/ Aminet 41 / Aminet 41 (2001)(Schatztruhe)[!][Feb 2001].iso / Aminet / gfx / edit / AmiCAD_2.07.lha / AmiCAD / ARexx / Conv2META.AmiCAD < prev    next >
Text File  |  2000-11-04  |  5KB  |  161 lines

  1. /* Conversion du fichier courant sous le format META puis
  2. conversion à l'aide du format spécifié à l'aide de MetaView.
  3. Version 1.00: 18 février 1998 (Chez Corbin)
  4. Version 1.01: 21 février 1999 (modif appel REQFILE)
  5. Version 1.02: 13 avril 2000 (modif gestion LOCK, UNLOCK)
  6. Version 1.03: 4 novembre 2000 (localisation anglais/français)
  7. $VER: Conv2META 1.03 (© R.Florac, 4/11/00) */
  8.  
  9. /* You have to adapt this line to your system (MetaView path) */
  10. METAVIEW = 'DP:Système/MetaView/MetaView'
  11.  
  12. options results
  13.  
  14. SIGNAL ON FAILURE
  15. signal on error
  16. signal on syntax
  17.  
  18. 'LANGUAGE'
  19. if result="français.language" then fr=1
  20. else fr=0
  21.  
  22. APLPORT = ADDRESS()
  23.  
  24. 'SAVE("RAM:AmiCAD.FILE")'
  25. fichier="RAM:AmiCAD.META"
  26.  
  27. if fr=1 then 'LOCK:TITLE("Conversion au format META en cours...")'
  28. else 'LOCK:TITLE("META format conversion...")'
  29. arguments=" RAM:AmiCAD.FILE TO "||'"'||fichier||'"'||" FORCE QUIET LIBS=Travail:AmiCAD/Bibliothèques"
  30. address command
  31. 'run AmiCAD2META' arguments
  32.  
  33. do NUMBER = 0 to 20
  34.     if (SHOW(PORTS,"METAVIEW." || NUMBER) = 0) then
  35.     leave
  36. end
  37.  
  38. /*
  39. ** Searching for MetaView: 1. our path above,
  40. **    2. path in env:MetaView.path
  41. ** or 3. you must have a assign "MetaView:"
  42. */
  43.  
  44. if (EXISTS(METAVIEW)=0) then do
  45.     if OPEN("MVVAR","env:MetaView.path","Read") then do
  46.     METAVIEW = READLN("MVVAR")
  47.     end
  48.     if (EXISTS(METAVIEW)=0) then do
  49.     METAVIEW = "MetaView:MetaView"
  50.     end
  51. end
  52.  
  53. /*
  54. ** Enable warnings for WaitForPort
  55. */
  56.  
  57. OPTIONS FAILAT 5
  58. ADDRESS COMMAND
  59.     "run " || METAVIEW || " NODISPLAY"
  60.     MVPORT = "METAVIEW." || NUMBER
  61.     "WaitForPort " || MVPORT
  62.  
  63. OPTIONS FAILAT 21
  64.  
  65. ADDRESS(APLPORT)
  66.  
  67. if fr=1 then do
  68.     titre='"Format sauvegarde"+CHR(10)+"AMF (Amiga MetaFile)"+CHR(10)+"WMF (Windows MetaFile)"+CHR(10)+"DR2D (Drawing 2D)"+CHR(10)+"CGM (ComputerGraphicMetafile)"+CHR(10)+"GEM"+CHR(10)+"EPS (Encapsulated PostScript)"+CHR(10)'
  69.     titre=titre||'+"AI (Adobe Illustrator)"+CHR(10)+"HPGL (Hewlett-Packard Graphics Language)"+CHR(10)+"ILBM (InterLeaved BitMap)"+CHR(10)+"JMF (Java MetaFile)"+CHR(10)+"FIG"+CHR(10)+"META"+CHR(10)'
  70. end
  71. else do
  72.     titre='"Saving format"+CHR(10)+"AMF (Amiga MetaFile)"+CHR(10)+"WMF (Windows MetaFile)"+CHR(10)+"DR2D (Drawing 2D)"+CHR(10)+"CGM (ComputerGraphicMetafile)"+CHR(10)+"GEM"+CHR(10)+"EPS (Encapsulated PostScript)"+CHR(10)'
  73.     titre=titre||'+"AI (Adobe Illustrator)"+CHR(10)+"HPGL (Hewlett-Packard Graphics Language)"+CHR(10)+"ILBM (InterLeaved BitMap)"+CHR(10)+"JMF (Java MetaFile)"+CHR(10)+"FIG"+CHR(10)+"META"+CHR(10)'
  74. end
  75. 'TITLE(""):SELECT('titre')'
  76. CHOICE = result
  77. if result>0 then do
  78.     extension.1 = "AMF"
  79.     extension.2 = "WMF"
  80.     extension.3 = "DR2D"
  81.     extension.4 = "CGM"
  82.     extension.5 = "GEM"
  83.     extension.6 = "EPS"
  84.     extension.7 = "AI"
  85.     extension.8 = "HPGL"
  86.     extension.9 = "ILBM"
  87.     extension.10= "JMF"
  88.     extension.11= "FIG"
  89.     extension.12= "META"
  90.     if fr=1 then 'REQFILE("Fichier 'extension.CHOICE' destination?","RAM:", FILEPART("")+".'extension.CHOICE'")'
  91.     else 'REQFILE("Destination 'extension.CHOICE' file?","RAM:", FILEPART("")+".'extension.CHOICE'")'
  92.     FILENAME=result
  93.     if FILENAME~="" then do
  94.     if POS(extension.CHOICE,FILENAME)=0 then FILENAME=FILENAME||"."||extension.CHOICE
  95.     FILENAME='"'||FILENAME||'"'
  96.  
  97.     ADDRESS VALUE MVPORT
  98.     LOAD fichier
  99.     select
  100.         when CHOICE = 1 then do
  101.         SAVE FILENAME AS AMF
  102.         end
  103.         when CHOICE = 2 then do
  104.         SAVE FILENAME AS WMF
  105.         end
  106.         when CHOICE = 3 then do
  107.         SAVE FILENAME AS DR2D
  108.         end
  109.         when CHOICE = 4 then do
  110.         SAVE FILENAME AS CGM
  111.         end
  112.         when CHOICE = 5 then do
  113.         SAVE FILENAME AS GEM
  114.         end
  115.         when CHOICE = 6 then do
  116.         SAVE FILENAME AS EPS
  117.         end
  118.         when CHOICE = 7 then do
  119.         SAVE FILENAME AS AI
  120.         end
  121.         when CHOICE = 8 then do
  122.         SAVE FILENAME AS HPGL
  123.         end
  124.         when CHOICE = 9 then do
  125.         SAVE FILENAME AS ILBM
  126.         end
  127.         when CHOICE = 10 then do
  128.         SAVE FILENAME AS JMF
  129.         end
  130.         when CHOICE = 11 then do
  131.         SAVE FILENAME AS FIG
  132.         end
  133.         otherwise do
  134.         ADDRESS COMMAND
  135.         'c:copy' " RAM:AmiCAD.META TO "||FILENAME
  136.         end
  137.     end
  138.     end
  139. end
  140. fin:
  141. ADDRESS COMMAND
  142. 'c:delete' " RAM:AmiCAD.FILE RAM:AmiCAD.META QUIET"
  143. ADDRESS(APLPORT)
  144. 'UNLOCK:TITLE("")'
  145. EXIT
  146.  
  147. /* Traitement des erreurs, interruption du programme */
  148. FAILURE:
  149. syntax:
  150. erreur=RC
  151. ADDRESS(APLPORT)
  152. if fr=1 then 'MESSAGE("Script Conv2META"+CHR(10)+"Erreur de syntaxe"+CHR(10)+"en ligne 'SIGL'"+CHR(10)+"'errortext(erreur)'"):UNLOCK'
  153. else 'MESSAGE("Script Conv2META"+CHR(10)+"Syntax error"+CHR(10)+"in line 'SIGL'"+CHR(10)+"'errortext(erreur)'"):UNLOCK'
  154. exit
  155.  
  156. error:
  157. ADDRESS(APLPORT)
  158. if fr=1 then 'MESSAGE("Script Conv2META"+CHR(10)+"Erreur en ligne 'SIGL'"):UNLOCK'
  159. else 'MESSAGE("Script Conv2META"+CHR(10)+"Error in line 'SIGL'"):UNLOCK'
  160. exit
  161.